In some error correction systems, encoded data is first decoded by a Viterbi decoder and then by a low-density parity-check (LDPC) decoder. In some cases, the encoded data fails LDPC decoding (e.g., because there is a significant amount of noise in the encoded data being processed). In such cases, Viterbi decoding is performed once more for a global iteration (turbo equalization). It would be desirable to develop systems that perform this operation.